A wide variety of memory devices can be used to maintain and store data and instructions for various computers and similar systems. For instance, flash memory is a type of electronic memory media that can be rewritten and retain content without consumption of power. Unlike dynamic random access memory (DRAM) devices and static random memory (SRAM) devices in which a single byte can be erased, flash memory devices are typically erased in fixed multi-bit blocks or sectors. Flash memory technology can include NOR flash and/or NAND flash, for example. NOR flash evolved from electrically erasable read only memory (EEPROM) chip technology, in which, unlike flash, a single byte can be erased; and NAND flash evolved from DRAM technology. Flash memory devices can be less expensive and denser as compared to many other memory devices, meaning that flash memory devices can store more data per unit area.
Flash memory has become popular, at least in part, because it combines the advantages of the high density and low cost of EPROM with the electrical erasability of EEPROM. Flash memory is non-volatile; it can be rewritten and can hold its content without power. It can be used in many portable electronic products, such as cellular phones, computers, voice recorders, thumbnail drives, and the like, as well as in many larger electronic systems, such as automobiles, airplanes, industrial control systems, etc. The fact that flash memory can be rewritten as well as its retention of data without a power source, small size, and light weight have all contributed to make flash memory devices a useful and popular means for transporting and maintaining data.
Many electronic devices and systems employ cryptographic and/or other processes to facilitate securing data, such as sensitive and/or personal information of a user, that is associated with the electronic device. Typically, such electronic devices, which can use non-volatile memory (e.g., flash memory), can also employ other memory, such as volatile memory (e.g., random access memory (RAM), static RAM, etc.), which can be utilized to store key information (e.g., secret key) and/or results (e.g., intermediate results) associated with cryptographic computations related to encrypting and/or decrypting data associated with the electronic device. Hackers or other unauthorized entities may attempt to access the volatile memory in order to learn the key information and/or results stored therein and/or glean other information related thereto in order to discover the data (e.g., sensitive and/or person information of the user), keys, and/or processes (e.g., cryptographic processes) used to secure the data. It is desirable to efficiently and securely manage data associated with an electronic device to minimize the risk of unauthorized and undesired access to or disclosure of such information.
Cryptographic and other processes often can employ random numbers (e.g., true random numbers, pseudo-random numbers) to facilitate securing data associated with a memory and/or electronic device. A random number generator can be used to generate random numbers. Conventionally, random number generators can employ cryptographic computations and/or a physical process to generate random numbers. Such conventional techniques for generating random numbers can be inefficient, for example, with regard to the time necessary to generate the random numbers, the resources used to generate the random numbers, and/or power used to generate the random numbers. It is desirable to efficiently generate random numbers to facilitate securing data, while also reducing or minimizing time, resources, and power expended to generate the random numbers.